home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
IDLIncludes
/
OCEMailbox.idl
< prev
next >
Wrap
Text File
|
1996-05-01
|
16KB
|
364 lines
/*
File: OCEMailbox.idl
Contains: Apple Open Collaboration Environment OCEMaibox Interfaces.
Version: Technology: AOCE Toolbox 1.02
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __OCEMAILBOX_IDL__
#define __OCEMAILBOX_IDL__
#include <somobj.idl>
#include <somcls.idl>
#ifndef __OCE_IDL__
#include <OCE.idl>
#endif
#ifndef __OCEMAIL_IDL__
#include <OCEMail.idl>
#endif
#ifndef __OCEMESSAGING_IDL__
#include <OCEMessaging.idl>
#endif
#ifndef __OCESTANDARDMAIL_IDL__
#include <OCEStandardMail.idl>
#endif
#ifdef __SOMIDL__
#if FOR_SYSTEM7_ONLY
/* opaque references, iterators, and progress indicator */
typedef OpaquePtr OpaqueMBMailboxRef;
typedef OpaquePtr OpaqueMBContainerRef;
typedef OpaquePtr OpaqueMBMailboxIterator;
typedef OpaquePtr OpaqueMBMailItemIterator;
typedef OpaquePtr OpaqueMBProgressIndicator;
typedef OpaquePtr OpaqueMBCopyOperationRef;
typedef OpaquePtr OpaqueMBNotificationRef;
typedef OpaquePtr MBMailboxRef; /* Substituted OpaquePtr for ``OpaqueMBMailboxRef*'' */
typedef OpaquePtr MBOpenContainerRef; /* Substituted OpaquePtr for ``OpaqueMBContainerRef*'' */
typedef OpaquePtr MBMailboxIterator; /* Substituted OpaquePtr for ``OpaqueMBMailboxIterator*'' */
typedef OpaquePtr MBMailItemIterator; /* Substituted OpaquePtr for ``OpaqueMBMailItemIterator*'' */
typedef OpaquePtr MBProgressIndicator; /* Substituted OpaquePtr for ``OpaqueMBProgressIndicator*'' */
typedef OpaquePtr MBCopyOperationRef; /* Substituted OpaquePtr for ``OpaqueMBCopyOperationRef*'' */
typedef OpaquePtr MBNotificationRef; /* Substituted OpaquePtr for ``OpaqueMBNotificationRef*'' */
/**********************************************************/
/* Error codes, will be moved to OCEErrors.h */
/***********************************************************/
/**********************************************************/
/* Mailbox Gestalt Values */
/**********************************************************/
/**********************************************************/
/* Mailbox Data Structures */
/**********************************************************/
typedef UInt32 MBMailboxToken;
typedef SOMLargeStruct MBMailboxData; /* Derived from a struct of 96 bytes in size */
/* MBPermissions control whether other applications can detect that mailbox has been mounted */
typedef UInt32 MBPermissions;
/**********************************************************/
/* Container Data Structures */
/***********************************************************/
/*
These structures are used to manipulate and list the mailbox containers.
A container is a logical collection of mailbox items. Examples of some
standard containers are the inbox and the outbox.
*/
typedef UInt32 MBContainerType;
typedef SOMLargeStruct MBContainerToken; /* Derived from a struct of 12 bytes in size */
typedef UInt32 MBContainerStatus;
typedef UInt32 MBContainerFlags;
typedef UInt32 MBContainerLocation;
typedef UInt32 MBContainerClass;
typedef SOMLargeStruct MBContainerData; /* Derived from a struct of 124 bytes in size */
typedef UInt8 AddressAsType;
/*
AddressAsType is actually an enumerated type and its constants
kAddressedAs_TO, kAddressedAs_CC, and kAddressedAs_BCC are
defined in OCEMail.h in an anonymous enum list.
*/
typedef SOMLargeStruct MBInboxLetterData; /* Derived from a struct of 176 bytes in size */
typedef SOMLargeStruct MBOutboxLetterData; /* Derived from a struct of 124 bytes in size */
typedef UInt32 MBMailItemType;
/* Filters for MBGetMailItemCount */
typedef UInt32 MBMailItemFilter;
typedef SOMLargeStruct MBMailItemData; /* Derived from a struct of 304 bytes in size */
/* Used to mark an item read or unread using MBMarkLetter */
typedef UInt32 MBLetterReadStatus;
/* Used to mark an item in or out of trash using MBMarkLetter */
typedef UInt32 MBLetterTrashStatus;
/**********************************************************/
/* Changes Enumeration Data Structures */
/***********************************************************/
typedef UInt32 MBMailItemChangeType;
typedef UInt32 MBNotificationMask;
/***********************************************************/
/* For mail item iterators */
/***********************************************************/
typedef UInt32 MBSortOrder;
typedef UInt32 MBSortDirection;
/* forward declaration */
/*------------------------------------------------------------------------------*/
/* Parameter Blocks for the Operations */
/*------------------------------------------------------------------------------*/
/**********************************************************/
/* Mailbox Operations */
/**********************************************************/
/* Mounts the mailbox. Returns a mailboxRef which should be used on all future operations. */
typedef SOMLargeStruct MBMountMailboxPB; /* Derived from a struct of 44 bytes in size */
/* Unmounts the Mailbox. After this call, the mailboxRef is no longer valid. */
typedef SOMLargeStruct MBUnmountMailboxPB; /* Derived from a struct of 32 bytes in size */
/**********************************************************/
/* Container and Mail Item Operations */
/***********************************************************/
/* Opens the container for use, returns a containerRef which should be used in all future Container operations */
typedef SOMLargeStruct MBOpenContainerPB; /* Derived from a struct of 44 bytes in size */
/* Closes the container and invalidates the containerRef */
typedef SOMLargeStruct MBCloseContainerPB; /* Derived from a struct of 30 bytes in size */
/* Reconnect open container to remote service */
typedef SOMLargeStruct MBReconnectOpenContainerPB; /* Derived from a struct of 36 bytes in size */
/* Returns the mail item with the specified mail sequence number */
typedef SOMLargeStruct MBGetMailItemDataPB; /* Derived from a struct of 38 bytes in size */
/* Returns the number of items in the container (filtered, if specified) */
typedef SOMLargeStruct MBGetMailItemCountPB; /* Derived from a struct of 36 bytes in size */
/*
Allocates the memory and sets the Iterator to the first
of the mail items of that type in the container.
*/
typedef SOMLargeStruct MBCreateMailItemIteratorPB; /* Derived from a struct of 48 bytes in size */
/* Dispose of the MBMailItemIterator */
typedef SOMLargeStruct MBDisposeMailItemIteratorPB; /* Derived from a struct of 28 bytes in size */
typedef SOMLargeStruct MBMailItemIteratePB; /* Derived from a struct of 32 bytes in size */
typedef SOMLargeStruct MBResetMailItemIteratorPB; /* Derived from a struct of 28 bytes in size */
/* MarkLetter Read/Unread and/or In Trash/Out of Trash. */
typedef SOMLargeStruct MBMarkLetterPB; /* Derived from a struct of 42 bytes in size */
/* Stores the MailItem locally. */
typedef SOMLargeStruct MBCopyLocalPB; /* Derived from a struct of 48 bytes in size */
typedef SOMLargeStruct MBCopyToFilePB; /* Derived from a struct of 46 bytes in size */
/* Cancels the copy operation, if possible. */
typedef SOMLargeStruct MBCancelCopyPB; /* Derived from a struct of 28 bytes in size */
/* An irrevocable delete of an item from a container. */
typedef SOMLargeStruct MBDeleteLetterPB; /* Derived from a struct of 34 bytes in size */
/* Forces a MailItem to be sent right now. This operation only works on MailItems in the outbox.*/
typedef SOMLargeStruct MBSendNowPB; /* Derived from a struct of 38 bytes in size */
/**********************************************************/
/* Notification and Changes Enumeration Operations */
/***********************************************************/
typedef OpaquePtr MBNotificationProcPtr;
typedef OpaquePtr MBNotificationUPP;
/* Allows a client to specify a callback routine and parameters. */
typedef SOMLargeStruct MBRegisterNotificationPB; /* Derived from a struct of 48 bytes in size */
/* Allows client to clear the callback info. */
typedef SOMLargeStruct MBUnregisterNotificationPB; /* Derived from a struct of 28 bytes in size */
/**********************************************************/
/* Progress Indication Operations */
/***********************************************************/
/*
Creates a progress indicator for tracking progress of a copy operation from
MBCopyToFile or MBCopyLocal.
*/
typedef SOMLargeStruct MBCreateProgressIndicatorPB; /* Derived from a struct of 28 bytes in size */
/* Dispose the progress indicator that was previously allocated by MBCreateProgressIndicator. */
typedef SOMLargeStruct MBDisposeProgressIndicatorPB; /* Derived from a struct of 28 bytes in size */
/*
Returns the current level of progress that has been completed.
The following fields can be polled during the the move in order to provide a "progress"
indicator. The operation will be done when workCompleted equals totalWorkAmount.
totalWorkAmount is pretty much a random number and is not an indication of the amount of
work involved.
*/
typedef SOMLargeStruct MBGetCurrentProgressPB; /* Derived from a struct of 36 bytes in size */
/**********************************************************/
/* Miscellaneous Operations */
/***********************************************************/
/* Returns the LetterSpec of a letter for use with Mailer APIs. */
typedef SOMLargeStruct MBGetLetterSpecPB; /* Derived from a struct of 38 bytes in size */
/* Obtain a mail sequence number and open container reference from a letter spec */
typedef SOMLargeStruct MBConvertLetterSpecPB; /* Derived from a struct of 38 bytes in size */
/* Returns the containerID given a well known container type */
typedef SOMLargeStruct MBGetContainerTokenPB; /* Derived from a struct of 44 bytes in size */
/* Returns ContainerData for a given ContainerToken. */
typedef SOMLargeStruct MBGetContainerDataFromTokenPB; /* Derived from a struct of 44 bytes in size */
/**********************************************************/
/* Contents Operations */
/***********************************************************/
/* Opens a letter that is currently in a container. */
typedef SOMLargeStruct MBOpenLetterPB; /* Derived from a struct of 38 bytes in size */
/* Opens a letter that is currently on the disk. */
typedef SOMLargeStruct MBOpenDiskLetterPB; /* Derived from a struct of 98 bytes in size */
/* Closes a letter that is currently open. */
typedef SOMLargeStruct MBCloseLetterPB; /* Derived from a struct of 28 bytes in size */
/* Opens a letter that is nested within another. */
typedef SOMLargeStruct MBOpenNestedLetterPB; /* Derived from a struct of 32 bytes in size */
/* Returns the path where the enclosures of a certain letter are kept. */
typedef SOMLargeStruct MBReadEnclosureFSSpecPB; /* Derived from a struct of 98 bytes in size */
/* Returns the path where the content of a certain letter is kept. */
typedef SOMLargeStruct MBReadContentFSSpecPB; /* Derived from a struct of 98 bytes in size */
/* Enumerates across the blocks of a letter. */
typedef SOMLargeStruct MBEnumerateBlocksPB; /* Derived from a struct of 46 bytes in size */
/* Returns a buffer of all the recipients of a certain letter */
typedef SOMLargeStruct MBReadRecipientsPB; /* Derived from a struct of 48 bytes in size */
/* Reads the attributes of a letter as specified in the requestMask. */
/*
buffer returned will contain the attribute values of
the attributes indicated in responseMask,
from the attribute indicated by the least significant bit set
to the attribute indicated by the most significant bit set.
Note that recipients - from, to, cc, bcc cannot be read using
this call. Use GetRecipients to read these.
*/
typedef SOMLargeStruct MBReadAttributesPB; /* Derived from a struct of 50 bytes in size */
/* Reads the block of a letter. */
typedef SOMLargeStruct MBReadBlockPB; /* Derived from a struct of 60 bytes in size */
/* Returns a SignatureContext that can be used to verify a signature. */
typedef SOMLargeStruct MBVerifySignaturePB; /* Derived from a struct of 32 bytes in size */
/* Creates a letter given the relevant info about the letter. */
typedef SOMLargeStruct MBCreateLetterPB; /* Derived from a struct of 142 bytes in size */
/* Submits a letter for processing. */
typedef SOMLargeStruct MBSubmitLetterPB; /* Derived from a struct of 58 bytes in size */
/* Begin a nested mail item within some mail item. */
typedef SOMLargeStruct MBBeginNestedLetterPB; /* Derived from a struct of 68 bytes in size */
/* End the nested mail item. This function is always executed synchronously. */
typedef SOMLargeStruct MBEndNestedLetterPB; /* Derived from a struct of 28 bytes in size */
/* Add attributes to a mail item. */
typedef SOMLargeStruct MBAddAttributePB; /* Derived from a struct of 42 bytes in size */
/* Adds an enclosure to a mail item. This function is always executed synchronously. */
typedef SOMLargeStruct MBAddEnclosurePB; /* Derived from a struct of 130 bytes in size */
/* Adds a block to a mail item. */
typedef SOMLargeStruct MBAddBlockPB; /* Derived from a struct of 60 bytes in size */
/* Adds a letter to another one. */
typedef SOMLargeStruct MBAddLetterPB; /* Derived from a struct of 32 bytes in size */
/* Adds content to a mail item. */
typedef SOMLargeStruct MBAddContentPB; /* Derived from a struct of 52 bytes in size */
/* Reads the content of a mail item. */
typedef SOMLargeStruct MBReadContentPB; /* Derived from a struct of 62 bytes in size */
/* Adds another recipient to a mail item. */
typedef SOMLargeStruct MBAddRecipientPB; /* Derived from a struct of 36 bytes in size */
/* Gets a font name from the letter, given a font number */
typedef SOMLargeStruct MBGetFontNameFromLetterPB; /* Derived from a struct of 36 bytes in size */
typedef SOMLargeStruct MailboxParam; /* Derived from a struct of 2362 bytes in size */
/*------------------------------------------------------------------------------*/
/* FUNCTION PROTOTYPES */
/*------------------------------------------------------------------------------*/
/**********************************************************/
/* Mailbox Operations */
/***********************************************************/
/**********************************************************/
/* MailItem Operations */
/***********************************************************/
/**********************************************************/
/* MailItem Changes Operations */
/***********************************************************/
/**********************************************************/
/* Progress Indicator Operations */
/**********************************************************/
/**********************************************************/
/* Miscellaneous Operations */
/***********************************************************/
/**********************************************************/
/* Contents Operations */
/***********************************************************/
#endif
#endif /* __SOMIDL__ */
#endif /* __OCEMAILBOX_IDL__ */